package cn.dao;

import cn.model.TNotice;
import cn.model.VNoticeUser;

import java.util.List;

public interface NoticeDAO {
    /**
     * 添加一条公告
     * @param notice 对象
     * @return 添加成功返回受影响的行数
     */
    public int addNotice(TNotice notice);

    /**
     * 删除一条公告
     * @param noticeid 编号
     * @return 添加成功返回受影响的行数
     */
    public boolean deleteNatice(int noticeid);

    /**
     * 修改一条公告信息
     * @param notice 需要修改的对象
     * @return
     */
    public boolean modifyNatice(TNotice notice);

    /**
     * 根据条件获取公告的列表
     * @param wherecondition 组合查询条件字符串,
     * @param currentPage 按分页查询的当前页
     * @param pageSize 按分页查询的每页数量
     * @return List
     */
    public List<VNoticeUser> getNatice(String wherecondition, int currentPage, int pageSize);

    /**
     * 根据条件获取符合条件的公告的数量
     * @param wherecondition
     * @return
     */
    public int getNaticeAmount(String wherecondition);


    /**
     * 通过用户ID查询
     * @param noticeid 公告编号
     * @return 返回用户信息列表
     */
    public VNoticeUser getNaticeById(int noticeid);
}
